package com.library.dto;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * 用户注册响应DTO
 * 返回注册结果和用户信息
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class RegisterResponse {
    /**
     * 响应消息
     */
    private String message;
    
    /**
     * JWT令牌
     * 注册成功后自动登录，返回token
     */
    private String token;
    
    /**
     * 用户信息
     */
    private UserInfo user;

    /**
     * 用户信息内部类
     */
    @Data
    @NoArgsConstructor
    @AllArgsConstructor
    public static class UserInfo {
        /**
         * 用户ID
         */
        private Long id;
        
        /**
         * 用户名
         */
        private String username;

        /**
         * 用户邮箱
         */
        private String email;

        /**
         * 用户电话
         */
        private String phone;

        /**
         * 用户状态（active/inactive）
         */
        private String status;

        /**
         * 用户创建时间
         */
        private String createdAt;


        /**
         * 用户角色（user/admin）
         */
        private String role;

        public UserInfo(Long id, String username, String email, String phone, String role) {
            this.id = id;
            this.username = username;
            this.email = email;
            this.phone = phone;
            this.role = role;
        }
    }
}

